package com.itheima.reggie.common;

/**
 * @Author: wf
 * @Desc:  基于ThreadLocal封装工具类，用于保存和获取当前用户的id
 * @Date: 2022-08-22 14:51:00
 */
public class BaseContext {
    private static ThreadLocal<Long>threadLocal = new ThreadLocal<>();

    /**
     * 功能描述: 设置值
     * @return void
     */
    public static void setCurrentId(Long id){
        threadLocal.set(id);
    }

    /**
     * 功能描述: 获取值
     * @return java.lang.Long
     */
    public static Long getCurrentId(){
        return threadLocal.get();
    }

    /**
     * 功能描述: 清理值---如果使用的是线程池，要把上一个线程中的数据清理掉
     * @return void
     */
    public static void clearCurrentId(){
        threadLocal.remove();
    }
}
